home *** CD-ROM | disk | FTP | other *** search
- #ifndef _DISPLAYMANAGER_
- #define _DISPLAYMANAGER_
-
- #include <MacTypes.h>
- #include <MacMemory.h>
- #include <QuickDraw.h>
- #include "Display.h"
- #include "LList.h"
-
-
- typedef class DisplayManager
- {
- public:
- void *operator new(size_t len) { return (void*)NewPtrSysClear(len); }
- void operator delete(void *data) { DisposePtr((Ptr)data); }
-
- DisplayManager(void);
- ~DisplayManager(void);
-
- OSStatus Initialize(UInt32 numVirtualDisplays);
- void Idle(Point where);
- void Swap(Display *display);
- void MBarClick(Display *display,Point where);
- void SetMBarTracker(Point where,Boolean track);
- void OffsetMBarMouse(Point *where);
- void Refresh(void);
-
- Display *FindDisplay(Point where);
- Display *FindDisplay(DisplayIDType displayID);
- Display *GetCurDisplay(void) { return fCurDisplay; }
-
- private:
- UInt32 fDisplayCount;
- GDHandle fMainDevice;
- GDHandle fCloneDevice;
- LList<Display> fDisplayList;
- Display *fCloneDisplay;
- Display *fCurDisplay;
- Display *fMBarTracker;
- Boolean fDMNotifierInstalled;
-
- OSStatus AddDisplay(UInt32 index);
- } DisplayManager;
-
-
- #endif /* _DISPLAYMANAGER_ */
-